Private branch exchange system and methods for operating same

ABSTRACT

A digital private branch exchange system and methods of operating same are provided. A system according to the instant invention is capable of providing improved and integrated conference calling, voice mail, music on hold, and call forwarding features, without being subject to the typical problems associated with the prior art.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention is generally related to communication systems and, more specifically, to private branch exchange systems including key systems, and methods for operating same.

2. Brief Description of the Pertinent Prior Art

A modern private branch exchange (PBX) system, in addition to facilitating communication among its lines and extensions must be capable of providing a number of special user services. For example, a PBX system must be capable of generating and routing, to each line and extension, a variety of standard and non-standard informational and supervisory tonal signals, such as, dial tone, audible ringing signal, etc., to provide each user with individualized call-status information. Furthermore, recently, it has also become desirable to provide such features as "music on hold", "voice mail", "station message detail recording" (SMDR), and "call forwarding." Also, given the needs of the modern office, the PBX system must have a conferencing feature service for temporarily connecting a plurality of PBX system lines and/or extensions so that they may converse and/or exchange data simultaneously.

Conventional PBX systems exist which are capable of providing the foregoing features. Typically, however, in order to be able to provide each of these special and particularly desirable features, conventional PBX systems incorporate application specific, dedicated hardware. For example, separate custom-made hardware modules are used in conventional systems to facilitate conference calling, generate tonal information signals and to distribute these signals to the plurality users (usually by means of a separate bus network), and to store and retrieve data (including voice messages in "voice mail" systems).

A number of disadvantages result from the use of application specific circuitry to provide special user services in conventional systems. For example, the custom hardware used to generate tonal signals is only capable of producing a limited number of frequencies and amplitudes (power levels), and therefore, the tones which may be provided are invariably fixed depending on the specific type of custom hardware used within the system. This is especially unfortunate given the nature of today's telecommunications standards and global economy. Signalling frequency and amplitude standards differ from country to country, necessitating modifications of tonal signals to conform to each country's communications standards. Also, in order to effect these changes, significant and costly modifications must be made to the system's hardware, in order for the PBX system to be able to conform to these different telecommunication standards. In certain cases, the required modifications may be so extensive as to necessitate substituting an entirely different PBX system for the one currently in use.

Serious signal attenuation problems also plague conventional systems. For example, in a conventional system, the custom hardware used to generate tonal signals is connected, in parallel, to each of the output ports (via a distribution network). This arrangement causes the signal power distributed to each of the output ports to decrease proportionately along with the addition of each new output port and/or output line, necessitating the use of amplification and/or signal repeater circuitry distributed throughout the system.

Further problems may result when "voice mail" features are incorporated into a typical PBX system. Conventionally, the circuitry used to provide "voice mail" features comprise separate and distinct systems from the main PBX system. These separate systems are interfaced to the main PBX system via analog telephone lines and communicate with each other using one or more predetermined, standard signaling protocols (which may be, for example, combinations of hook-flashes, dual tone multiple frequency signals, or other protocols). Thus, each of the systems (the "voice mail" and main PBX systems) must be provisioned with necessary hardware to communicate using combinations of appropriate timing instructions and/or other protocol commands so as to synchronize their operations. This can result in the profound disadvantage that, if synchronization is lost between the separate systems, the overall PBX system will no longer function properly. Additionally, during initialization, the user of conventional "voice mail" systems may experience long periods of delay, since the communications protocol must be established and initialized among the separate systems prior to the beginning of data transfer to the voice mail system. Also, since each of the systems is distinct from the other systems, each system must have its own individual control circuitry and administrative/control information data bases, and therefore, must be individually administered and maintained. These two problems (the requirement for main PBX and voice mail system synchronization, and separate, distinct administrative/control means for each system) serve to significantly increase the overall system's maintenance costs, required administrative down-time, and electronic complexity.

Finally, PBX "call forwarding" features currently available are quite limited in their capabilities. Typical "call forwarding" schemes merely re-route, after a predetermined amount of time, an incoming call from one line or extension of the PBX system to another predetermined extension. This can result in, inter alia, two major disadvantages. First, inconveniently, if the second extension is not answered, then, the caller must attempt to contact the desired party later by making a second call to the PBX system. Second, since a conventional PBX system's "call forwarding" circuitry may only redirect an incoming call from one PBX extension to another extension within the system, and not to an outside line remote from the system, individuals who usually would be at a given PBX extension (for example, in the workplace), but are currently at a location remote therefrom (for example, at home or commuting) cannot be reached by the PBX system.

Examples of conventional communications and/or private branch exchange systems include U.S. Pat. No. 4,215,247, issued to Lambert; U.S. Pat. No. 4,280,216, issued to Zeitrag; U.S. Pat. No. 4,566,096, issued to Sarson, et al; U.S. Pat. No. 4,701,948, issued to Molnar; U.S. Pat. No. 4,964,157, issued to Aoshima; U.S. Pat. No. 4,480,330, issued to Magnusson, et al; and U.S. Pat. No. 4,446,807, issued to Kerr, et al.

Objects Of The Invention

It is a general object of the present invention to provide a PBX system that overcomes the problems and disadvantages associated with conventional PBX systems. More specifically, it is an object of the present invention to provide a digital private branch exchange system having improved and integrated "conference calling", "voice mail," "music on hold," and "call forwarding" capabilities.

Further Objects of the present invention include providing a PBX system wherein call-status tones may be easily and inexpensively modified and wherein attenuation of supervisory signals distributed to the individual exchanges is substantially eliminated.

SUMMARY OF THE INVENTION

Accordingly, in one aspect of the present invention, a digital PBX system is provided comprising a plurality of input and output ports. At least one input port and output port are recursively connected so as to provide at least one feedback receiving and transmitting port connected by a feedback path or bus means. Each of the plurality of input and output ports including the feedback receiving and transmitting ports, are capable of transmitting at least one digitally encoded (for example, in pulse code modulation format) time division multiplexed (TDM) signal in at least one respective time slot. Control means is provided for controlling the PBX system, generating supervisory data corresponding to a plurality of supervisory tones, and for facilitating "voice mail." Switching means is also provided according to the instant invention, that is capable of interconnecting any of the time slots of the ports. The supervisory data generated by the control means can be supplied to the feedback bus means so as to provide, in respective time slots, the supervisory data corresponding to the supervisory tones to any of the time slots of the ports, as desired. Additionally, data storage means may be provided, according to one embodiment of this aspect of the instant invention, for storing and retrieving supervisory data generated by the control means and voice mail data. Advantageously, a PBX system according to the present invention is capable of providing an individual copy of each supervisory tone (in easily convertible digitally encoded format) to each time slot requiring the tone, and therefore, is not subject to the tonal signal attenuation that plagues conventional PBX systems.

In a second aspect of the present invention, several novel processes are provided for operating a PBX system to provide the special user services such as those described previously. For example, according to this second aspect of the present invention, a novel method for facilitating conference-type communication among three desired time slots of a PBX system is provided. According to this novel conference-calling communication method, the desired conference call time slots are each connected to respective individual time slots of the feedback bus. The three respective time slots are then associated among themselves so as to form three unique pairs of time slots, in a manner that will be described more fully hereinafter. Each of the constituent time slots of each of the three pairs of time slots are then converted from their pulse code modulated format to a linear coded format, and next, the two time slots (now in linear coded format) in each pair of time slots are added together to form three respective linear sums respectively corresponding to each of the unique pairs of time slots. The three respective linear sums are then reconverted to pulse code modulated format and are supplied to additional respective time slots of the feedback bus. Finally, in this method, the additional respective time slots are connected by the switching means to the conference callers' extensions such that each caller's input time slot receives the sum of the other two callers' output time slots. Thus, each caller is capable of hearing, talking with and exchanging data with the other callers in the conference simultaneously. Advantageously, this method (like the others, according to this aspect of the present invention, all of which will be described shortly) requires no control hardware other than that which is already present in the PBX system. Other novel methods will also be described hereinafter.

In a third aspect of the present invention, a method for implementing an improved "call forwarding" feature is provided. In this method the presence of a call being made to the PBX system is detected. The PBX system connects the incoming call to a caller-desired first extension. After a predetermined period of time has elapsed from the time that the incoming call was connected to the first desired extension without that call being answered at the first extension, the PBX system disconnects the incoming call from the first desired extension and successively re-connects it, after the predetermined time has elapsed at each subsequent extension or remote location without the call being answered, to as many other successive subsequent predetermined extensions or remote locations as is desired. In one embodiment of this third aspect, if the extension or remote location sought to be connected to by the incoming call is busy or otherwise occupied, the call is connected automatically to the PBX system's voice mail system. Also in this embodiment, the extension or remote location receiving the call may be prompted to provide a password and/or predetermined string of digits and/or characters in order to provide greater data security. Advantageously, this embodiment of a novel call forwarding method according to the third aspect of the present invention frees the intended recipient of the call from having to answer the call in order to be able to receive its information, and further, permits forwarding of the call not only to a second extension within the PBX system but also to a location remote therefrom. Thus, an intended recipient of a call need not be present in the workplace to communicate using the PBX system, but rather may communicate using the PBX from any location accessible by ordinary public telecommunications networks.

Other features and advantages of the present invention will become apparent as the following Detailed Description proceeds and upon reference to the Drawings, wherein like numerals depict like parts and in which:

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a functional block diagram of a PBX system made according to the first aspect of the present invention;

FIG. 2 is a system-level architectural block diagram of one embodiment of a PBX system made according to the first aspect of the present invention;

FIG. 3 is a flow chart illustrating the steps of a preferred embodiment of a method for generating supervisory signals (according to the second aspect of the present invention) in a PBX system made according to the first aspect of the instant invention; and

FIG. 4 is a more detailed schematic block diagram depicting component circuits of the embodiment of a PBX system as shown in FIG. 2.

While the present invention will hereinafter be described in connection with preferred embodiments and methods of use thereof, it will be understood that it is not intended to limit the invention to these embodiments. On the contrary, it is intended to cover all alternatives, modifications, and equivalents as may be included within the spirit and broad scope of the various aspects of the present invention as defined only by the appended claims.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS Functional Description

FIG. 1 shows the basic functional elements, in block diagram form, of a PBX system according to the instant invention. Functionally, a PBX system 10 according to the instant invention comprises switching means 14 which has the ability to interconnect any of the digitally encoded time division multiplexed signal time slots of its input 1a, 2a, 3a, 4a and 1b, 2b, 3b, 4b, ports, respectively. Each of these ports 1a, 2a, 3a, 4a, and 1b, 2b, 3b, 4b, comprises conventional bi-directional multiplexed buses. That is, a time slot from an input port and corresponding output port (e.g. 1a and 1b) are used to provide a peripheral device extension for each device connected to the PBX system. As is well known to those skilled in the art, extension peripheral devices (not shown) may be connected to the switching means 14 via the ports to permit at least one time slot of the input ports to carry input data to the PBX system 10 and to permit data transfer from the system 10 (through at least one time slot of the output ports) to the extension peripheral device. Of course, as will be appreciated by those skilled in the art, the number of input and output ports illustrated in FIGS. 1 and 2 should not be viewed as narrowing the instant invention to using only a particular number thereof, but rather, if appropriately modified in accordance with obvious techniques well known in the art, the instant system 10 may utilize any number of input and output ports. Also, each of the input and output ports usually services between 24 and 32 time slots; however, as in the case of the number of input and output ports, the number of time slots serviced by each input and output port may vary without departing from either the spirit or scope of the present invention.

Also as depicted in FIG. 4, a system 10 according to the instant invention comprises a time division combining means (shown by dashed lines) 27. This combining means 27 itself comprises time division multiplexer means, including multiplexer means 16 and demultiplexer means 18, separate input means 26, separate output means 28 and feedback bus means 20. According to the first aspect of the instant invention the demultiplexer means 18 is connected to the switch means 14 by feedback transmitting port 4b, while also being connected to multiplexer means 16 via feedback bus means 20. Multiplexer means 16 is connected to feedback receiving port 4a which is in turn connected to switching means 14. These features, feedback receiving port 4a, multiplexer means 16, feedback bus means 20, demultiplexer means 18, and feedback transmitting port 4b comprise an important part of a system 10 according to the instant invention, and will be described more fully with reference to the preferred embodiment depicted in FIGS. 2 and 4.

Also according to the first aspect of the instant invention, control means 12 is provided having connections 22 and 24 which permit, respectively, control and communication with the storage means 30 and (via the switch 14) time division combining means 27. The control means 12 according to the instant invention is able to control the operation of the system 10 by, for example, transmitting control data and/or signals to the aforesaid elements of the system 10. Specifically, the transmission of the control data and signals make it possible for the control means 12 to direct and control the switching means in its assignment and interconnection of data into input and output port time slots. Furthermore, as will be more fully explained hereafter, the control means 12, by effectively controlling the time division combining means 27, the storage means 30, and the switching means 14, according to the process of the second aspect of the instant invention, is able to provide desired special user features including, for example, conference calling capabilities, call forwarding, voice mail and music-on-hold features, and other features.

Turning to FIGS. 2 and 4, there are respectively shown a system-level architectural description and a more specific block diagram of one preferred embodiment of the system 10 of the first aspect of the instant invention. System 10 preferrably is connected to an outside public telecommunications network (not shown) by way of line interface circuits 38a and 38b (collectively referred to by numeral 38 in FIG. 4). These line interface circuits 38a and 38b are connected both to the switching means 14 and to the input ports, respectively. Analog communication signals entering the system 10 from the outside network via lines 101, 102, are converted, preferrably, into a bit stream having a conventional digital communications protocol, such as, pulse code modulation (PCM) format and also are time division multiplexed into time slots. In this way, analog signals entering the system 10 via lines 101, 102 are converted into a desired digitally encoded format and signals emitted by the system 10, prior to reaching the input ports 1a, 2a are reconverted from this digitally encoded format to analog signal form to permit transmission through the public network. Of course, the line interface circuits 38a, 38b may permit conversion to and from any number of desired encoding formats, and, if either the system 10 or the public network are appropriately modified, may be eliminated entirely.

Likewise, extension interface means 40a, 40b, 40c, 40d, (collectively referred to as 40 in FIG. 4), in this preferred embodiment, permit conversion of analog signals to and from the encoded format to other desired formats. As in the case of the line interface means 38a, 38b the extension interface means 40a, 40b, 40c, 40d may permit signal conversion to and from an infinite variety of encoding formats, or may be eliminated entirely. Coordination and generation of the TDM time slots is preferably accomplished by timing means 70, which, preferably may comprise an Intel 5C 090-60 chip.

The control means 12 (preferably comprising a conventional Intel 80X86 microprocessor 50, local bus interface 54, and ROM 60), in addition to being capable of directing and interconnecting (by controlling the switching means 14, which preferably comprises a conventional MITEL MT8981DE chip) any of time slots of the input and output ports, is capable of generating and distributing appropriate supervisory tonal signals to the various ports. Two elements of the system 10 are essential to these capabilities of the control means 12. First, the system 10 is provided with feedback bus means 20. The control means 12, according to the instant invention, is capable of generating various supervisory tonal data signals corresponding to standard and non-standard call-status tones. The control means 12 transmits the supervisory data to the switch 14 via the control bus 24. The switching means 14 then places the data in respective time slots of the feedback bus 20 and transmits the data through the feedback transmitting port 4b. The control means 12 determines which of the time slots of the feedback bus 20 is being respectively occupied by the data. The supervisory signals may then be recursively fed through the feedback bus 20 to feedback receiving port 4a. Thereafter, advantageously, the control means 12 may distribute supervisory data in the system 10 by controlling the switching means 14 so as to connect the time slots of the ports 1b, 2b, 3b to the data in the time slots of the bus 20, to permit transmission of data carried by the time slots of bus 20 to the port 1b, 2b, 3b. Thus, preferrably, the supervisory data, prior to being connected to the time slots of the ports 1b, 2b, 3b, travel through the feedback bus 20 at least once. Of course, as has been described previously, the supervisory data, prior to reaching the extensions to which it has been connected undergoes conversion from its digitally encoded format to an appropriate analog format by the extension interface means 40a, 40b, 40c, 40d.

A fuller explanation of the functioning of the time division combining means 27 and the feedback bus means 20 will now be made. Supervisory data (corresponding to respective supervisory tones) generated by the control means 12 are transmitted through the I/O bus 24 via bus interface means 54 to the switch means 14 and are assigned to predetermined, unique, respective time slots by the timing means 70 and the switch 14. Thence, the data (in respective time slots) are fed through demultiplexer means 18, after being transmitted through feedback port 4b, and travel through bus 20. Then, the data are inputted to feedback port 4a, enabling the switch to connect the data to the other ports (and time slots thereof) 1b, 2b, 3b, 4b) as needed. Time slots are multiplexed in time by means of the input multiplexer means 16. Since, the switching means 14 is capable of interconnecting any of the time slots of the ports, any supervisory signal may be distributed to any desired extension by appropriate control of the switching means 14 by the control means 12.

Advantageously, according to the second aspect of the present invention, complex call-status or supervisory signals (with or without period cadence) may be generated simply and effectively by using the switching means 14 and the novel feedback bus means 20 of the instant invention. In the general method for producing these a complex signal according to the second aspect of the instant invention, feedback bus 20 time slots carrying supervisory data and bus 20 slots carrying silence data are alternatively cross connected to time slots for carrying the complex data. Complex supervisory signals thus generated are transmitted by the feedback bus 20 in their own, additional respective individual time slots. If desired, by predeterminately selecting the amount of time that silence data and supervisory data are connected to the complex supervisory data time slot, the complex data may be made to have periodic cadence. This complex data, either with or without periodic cadence, may then be connected to any time slot of the ports of the system by the switch 14, in the manner that has been described previously.

More specifically, in order to generate complex supervisory data, the control means 12 (by controlling the switching means 14) may cause supervisory data entering the switching means 14 at feedback receiving port 4a to be connected at the feedback transmitting port 4b to a desired time slot of the bus 20 dedicated to carrying complex supervisory data. The control means 12 may next cause the switching means 14 to connect a time slot carrying silence data (entering at the receiving port 4a) to be cross-connected at the transmitting port 4b to the desired complex data time slot of the bus 20. If periodic cadence for the complex data is desired, the control means 12 may cause this connection of the silence data time slot to the complex data time slot of the bus 20 to be for a predetermined time and to re-occur at predetermined time intervals, however, it will be appreciated that complex signals without periodic cadence (that is, having arbitrary cadence or consisting of supervisory signals without a silence signal) may be generated according to this aspect of the present invention without departing therefrom. The complex supervisory signals thus formed may then be distributed to any extension in the system 10, in the manner previously described.

Advantageously, by using the call-status information distribution method according to the instant invention, no signal attenuation results, unlike in the prior art. This is due to the fact that, in the instant invention, each time slot may be made to receive an individual copy of desired supervisory data which may then be converted into an individual analog wave form of the signal. Thus, as many extensions as are needed may be assigned by the control means 12 and connected by the switch 14 to a bus 20 time slot containing a given supervisory or complex signal without signal volume degradation.

Continuing the discussion of the second aspect of the instant invention, the preferred methods for accomplishing the generation of the supervisory data by the control means will presently be described. In the preferred embodiment of the system 10, the control means comprises a microprocessor 50 having access to and control of a circular memory buffer (not shown) comprised within storage means 30. Storage means 30 preferably comprises, in this embodiment, a circular memory buffer contained in RAM 62 and/or secondary storage means 64 (e.g., a hard disk drive) interfaced to the bus 24 by standard disk controller means 56, which may be a SCSI, RLL, IDE, or other type of standard drive controller/interface means. The microprocessor 50, in this embodiment, generates a series of data values and stores these valves in the circular buffer located in storage means 30 after transmitting them through the memory bus 22. The storage means 30 may either contain a plurality of circular buffers in RAM 62, each for containing respective call-status supervisory data corresponding to respective tones, or a single memory buffer appropriately segmented into individual storage segments for storing said supervisory data therein in accordance with well known conventional memory management techniques. The microprocessor 50, in this embodiment, is programmed so as to implement a simple and efficient tone generating process, the steps of which are depicted in FIG. 3. As shown in FIG. 3, numerical values represented by F_(I) are converted into an encoded form thereof, and are then stored respectively in memory locations of the circular buffer T[I], where parameter I represents a given iteration step for generating supervisory signal. The numerical value F_(I) is assigned a value equal to (G, * sin (I*2*pi*C*N₂)+G₂ * sin (I*2*pi*C*N₃))/G₃, wherein each of the variables G₁, C, N₂, G₂, N₃, and G₃ correspond to values needed to generate each type of status tone, and will thus vary depending on the signal to be generated. Also, the variables I and N₁ are iteration values and depend upon the size of the buffer T[I] and location within the buffer T[I] of the value F_(I) being generated. Using readily available publications of standard AT&T information, it has been determined that, in order to generate a standard U.S. dial tone, N₂ must be set equal to 350; N₃ must be set equal to 440; G₁ must be set equal to 1; G₂ must be set equal to 2; and G₃ must be set equal to 3. Data values F_(I) for generating a standard U.S. busy tone in this embodiment of the system 10 are also produced according to the above equation, with the exception that the variables N₁, N₂, N₃, G₁, G₂, and G₃, are set to 400, 480, 620, 1, 2, and 3 respectively. Lastly, to generate the audible ringing tone, data values F_(I) are produced that satisfy the above equation, except that the variable N₂, N₃, G₁, G₂, and G₃ are set to 200, 440, 480, 1, 2, and 3, respectively. Of course, as will be appreciated the above equation, by selecting and substituting appropriate values for each of the above variables, may be used to produce data for generating any type of arbitrary supervisory signal. The F_(I) values thus generated for each of the supervisory signals are stored appropriately in the circular buffer T[I] after having been converted to PCM format, using commonly-known and readily available algorithms. Also, it will be appreciated that, if desired, the data values F_(I) may be generated by the control means 12 in real-time and need not be stored in the storage means 30. Alternatively, the values F_(I) may be pregenerated and permanently stored in a ROM device or generated at system 10 boot-up and stored in storage means 30, without departing from the instant invention.

Once stored in the circular buffer array, however, according to this preferred embodiment, the supervisory data corresponding to respective supervisory tones are supplied to the feedback bus 20 via the control means 12 through the control bus 24. For example, in this preferred embodiment, the microprocessor 12 may be provided with an appropriate interrupt service routine triggered at periodic time intervals (e.g., 125 microseconds) and values from the buffer may be read from the storage means 30 and placed onto the I/O bus 22, and from there, placed onto the control bus 24 by the control means 12. Thence, the control bus 24 supplies these data to the switch 14 to place them onto the feedback bus 20. Once the various data values for the supervisory signals have been placed in respective time slots of the feedback bus 20, the control means 12 may be used to connect these data values to the ports. Also, by periodically cross-connecting the various bus 20 time slots with each other and/or a bus 20 time slot dedicated to silence, in the manners described above, various complex supervisory signals having periodic cadence may be generated.

In another method according to this second aspect of the present invention, a music on hold feature may be implemented. As shown in FIGS. 2 and 4, an interface circuit 36 connects an external audio source 35 to an encoding device 32 (all of conventional construction). The encoding device 32 converts analog audio or music signals supplied by the audio source 35 into a digitally encoded format thereof (suitable for use in the system 10). Preferably, as has been described previously, this digitally encoded form takes a form of a PCM-type encoding. The encoded audio data is then time division multiplexed and transmitted to at least one dedicated time slot reserved solely for such data of the feedback bus 20. As has been described previously, the incorporation of the novel feedback bus means 20 thus permits supply of the music from its reserved time slot to any time slot of the input and output ports of the system 10. Further advantageously, unlike the prior art, the incorporation of the music on hold feature of the instant invention requires no additional control hardware other than that already present in the system 10.

Also, no additional hardware must be added to system 10 to implement the voice mail feature according to the second aspect of the instant invention. In this method of the second aspect of the instant invention, incoming voice mail messages to be recorded may be transmitted by the switching means 14 from any of the time slots of the input ports to a dedicated time slot (voice record channel) of the feedback bus 20. Thence, the data is inputted to port 4a. From there, the voice data may be transmitted through the system bus 24 to the control means 12. Thence, the data may be transmitted to either an external data storage device (not shown) via the voice mail bus shown in FIG. 2 or may be stored in storage means 30 after being transmitted through I/O bus 22. Of course, inasmuch as the storage means 30 may comprise both secondary 64 as well as primary storage devices 62 the information transmitted through I/O bus 22 may first be stored in primary storage means 62 (e.g., random access memory) until a sufficiently large block of voice data is stored therein and, thereafter, may be dumped into secondary storage means 64 for future reading by the control means 12. Outgoing voice mail may be read either from the separate storage device (not shown) or from the storage means 30 by the control means 12. The data is then transferred to the switch 14 so as to be placed into a second dedicated voice time slot (voice replay channel) of the feedback bus 20, and from there the stored voice mail data may be transmitted by the switching means 14 to any extension requesting the replay of the voice mail message. Thus, advantageously, a PBX system 10 according to the instant invention does not require special combinations of dedicated timing instructions to synchronize its voice mail and music on hold features with the operation of the main system since all of these functions are controlled by the control means 12. Moreover, no additional special control hardware or transmission lines are required to implement a voice mail feature using the system 10 and methods of the first and second aspects, respectively, of instant invention. Finally, inasmuch as the voice mail feature is controlled using the existing control means 12 for the system and require no separate provisioning, the entire system may be administered collectively, solely through the programming of the processor 50, significantly decreasing system maintenance costs, required administrative down-time, and complexity.

Also, in regard to the second aspect of the present invention, a method is provided for facilitating conference-type communication among three desired time slots of ports of the system 10 made according to the first aspect of the present invention. According to this method, the desired output time slots of the desired extensions are each connected to respective individual time slots of the feedback bus 20 by the switching means 14. The three respective time slots are then associated among themselves as three unique pairs of time slots consisting of two time slots each. For example, if the three time slots to be associated are designated a, b, and c, respectively, the three unique pairs resulting from their association would be given respectively by: a and b; b and c; and, a and c. Each of the time slots a, b, c are then converted from their coded format (as stated previously, preferably, pulse code modulated format) to a linear coded format by the control means 12. For example, the conversion from the coded format to the linear format of each of the time slots (that is the signals of each of the time slots) may comprise the removal of format masking (for example, in the case of a PCM code, logically XORing the data of the channels a,b,c, with the value 55 hex and the removal of Mu or A-law encoding). Conventional methods for conversion of PCM coded data to linearly encoded data are well known in the art, and any conventional PCM to linear coding conversion method may be used in the method presently being described, without departing from the spirit or scope of the instant invention.

After converting each time slot a, b, c, each associated pair (a and b; and c; and, a and c) of linearly converted time slots are added together, to form three respective linear sums of the three unique pairs of time slots previously associated. These three respective linear sums are then converted into pulse code modulated format and are supplied to additional respective time slots of the feedback bus 20. Of course, as in the case of the conversion of the time slots into linear coded format, the present conversion from the linear coded format into pulse coded format may comprise well known algorithms for doing same, without departing from the instant invention. The three converted sums are then supplied to additional respective time slots of the feedback bus 20. The control means 12, by appropriate manipulation of the switching means 14, may then connect each of the conference caller's input time slots to each of the sum signals, respectively, so that each of the callers' input time slots receives the sum of the other two callers' output time slots. Advantageously, this permits each caller to hear, communicate with, and/or exchange data with each of the other callers in the conference. As will be readily appreciated, as with the other methods previously described according to the second aspect, no special control hardware is required to implement this three-way conference calling feature according to the second aspect. This results in substantial cost savings in the implementation of this feature. Furthermore, as will be readily appreciated, the method described in detail herein may be extended to any number of conference callers, in simple and obvious ways to those skilled in the art, so that any number of parties may be permitted to communicate simultaneously.

Preferably and advantageously, this conference-calling method according to this aspect of the present invention also comprises the generation and utilization by the control means 12 of a look-up table matrix array stored in the storage means 30 containing all possible PCM data values for caller output channels and their sum value after linearization, summing, and reconversion to PCM. The table may then be used by the control means 12 to quickly and efficiently allow the control means 12 to index into the two dimensional look-up table array by using, as indexes, the respective data values in PCM code of each of the two associated caller output time slots to find a sum value (also in PCM code) which then may be sent to the input time slot of the third non-associated extension or remote location. Advantageously, this arrangement permits the sum of the two channels to be sent to the third extension's (or remote location's) non-associated input channel without the need to convert the two channels to and from the linear coded format. Of course, the conference calling method previously described need not use such a look-up table, but may rather incorporate the use of conventional digital signal processing techniques to permit the microprocessor 50 to decode, sum, and re-encode the time slots of the extensions in real time, to permit conference calling according to the instant method. The choice of whether the look-up table or the digital signal processing approach to facilitate conference calling is used will be dependent upon the capacity and speed of the storage means 30 and/or processing power of the control means 12.

Turning to the third aspect of the present invention, a method for implementing an improved call forwarding feature which may be used in a PBX system 10 according to the instant invention is provided. In one embodiment of the method according to this third aspect, the presence of a call being made to the PBX system is detected, preferably, using conventional ringing voltage detector means included in interface means 38a, 38b. A signal is then supplied by the detector means to the control means 12. In response to the signal supplied by the detector means, the voice mail system and method previously described may be actuated in one embodiment of this method, and the incoming caller is prompted by a recorded message retrieved from the storage means 30 (or from alternative storage means, not shown) to supply a desired extension. Any conventional method may be used to accept the extension supplied by the caller (e.g., a dual-tone multi-frequency-type method, as is well known to those skilled in the art). The control means 12 then uses the extension number supplied and causes the switching means 14 to connect the incoming call to the supplied extension time slot. Of course, the caller may not be required to supply an extension number, but rather, that number may be stored in the storage means 30 and retrieved by the control means 12, or may be supplied using other means. After a predetermined period of time has elapsed from the initial time that the incoming call was connected by the switching means 14 to the first desired extension without that call being answered, the system 10 (or more particularly, the control means 12) causes the switching means 14 to disconnect the incoming call from the first desired extension, and the incoming call is then connected by the control means 12 (via the switching means 14) to a different, second predetermined extension or outside telecommunications line of the public network (not shown). This new extension (or outside line) may be predetermined and associated with the first extension in memory 30 (using conventional memory association techniques), so that when needed, the control means 12 is able to connect the incoming caller to that second extension based on the first extension supplied. Advantageously, in the system 10, (when implementing the aspect of the present invention), the second predetermined extension need not be connected to the physical ports of the system 10, but may rather be located remote therefrom (e.g., at a location accessible through a public network). As will be appreciated, the associative memory space used by the control means 12 to facilitate forwarding of the incoming calls may contain more than one such successive forwarding extension (and also, may include any number thereof), depending upon the capacity of storage means 30 and the particular application to which the system 10 is put. Advantageously, outside forwarding of the incoming call is accomplished by associating in the associative memory of the storage means 30, with the desired extension, an outside number for the public telecommunications network. Means for dialing up and connecting the public network to a port (preferably included in the line interface means 38) controlled by the control means 12, which (after reading the outside number from storage means 30) transmits the number to the dialing and connecting means. The switch means 14 then connects the caller to the outside line of the public network. In a variant of the foregoing call forwarding method according to this third aspect of the present invention, after the answering of the second (or later) extension or remote location, the control means 12 may actuate an authorization request prior to permitting data or message exchange between the caller and the extension, by using the voice mail message system of the instant invention. The one answering the call at either the extension or the remote location may then be prompted to supply a password and/or predetermined string of digits within a predetermined amount of time. The control means 12 may then evaluate the numbers and/or password supplied from the extension or remote location against the predetermined values stored in the storage means 30 therefor. If a correct numerical string and/or password has been entered, the incoming call and the extension or remote location may be permitted to exchange data or transmit messages, while, if not, the incoming call may be directed to the voice mail system by the control means 12, and data supplied by the incoming call may be stored into storage means 30 for later recall. For example, if, after a predetermined amount of time, either the extension or the remote location do not answer the incoming call, the incoming call may be directed by the control means 12 via the switching means 14 to the storage means 30 or external storage (not shown) according to the voice mail method and data supplied by the incoming call may be stored in storage means 30 for later recall according to the voice mail feature of the instant invention.

Various changes may be made in the above-described invention without department from the spirit and scope thereof. For example, call book-keeping (SMDR) information of the system 10 may be gathered by the control means 12 and stored in the storage means 30. At periodic time intervals, the SMDR information stored in the storage means 30 may be dumped therefrom into the alternative storage means (not shown) via the SMDR bus (shown in the FIG. 2). Also, storage means 30 and alternative storage (not shown) may be used to contain program code for controlling the sequence of operations to be performed by the microprocessor 50 in the above-detailed preferred embodiment of the system 10 according to the instant invention. 

I claim:
 1. A digital/private branch exchange system having a plurality of input and output ports including feedback receiving and transmitting ports, each of said ports having at least one time slot, said system comprising:a. control means for controlling operation of said system and for generating supervisory data corresponding to a plurality of supervisory signals; b. switch means for interconnecting any of said plurality of time slots of said ports, and for receiving supervisory data from said control means; and c. feedback bus means connecting said at least one feedback receiving and transmitting ports and being able to receive into respective time slots said supervisory data generated by said control means from said switch means, said feedback bus being adapted to continuously providing said supervisory data to said at least one feedback receiving port to permit supply by said switch means of said supervisory data to any of said time slots of said of input and output ports.
 2. A system according to claim 1, wherein said supervisory signals are predetermined.
 3. A system according to claim 1, and further comprising data storage means for storing said supervisory data generated by said control means and for supplying said stored supervisory data to said feedback bus means.
 4. A system according to claim 1, and further comprising means for supplying digitally encoded music to a music-on-hold time slot of said feedback bus.
 5. A system according to claim 4, wherein said music supply means comprises analog music source means connected to means for converting analog music into a digitally encoded form thereof.
 6. A system according to claim 1, and further comprising message processing means comprising means for receiving message data from any of said time slots of said plurality of ports, means for storing said message data, and means for supplying said message data stored in said storage means to any of said time slots of said plurality ports.
 7. A system according to claim 1, wherein said switch is capable of combining any of said respective time slots of said supervisory data to form complex supervisory data and also wherein said complex data thus formed are supplied to additional respective time slots of said feedback bus.
 8. A system according to claim 7, wherein some of said supervisory data comprise silence data corresponding to a silence supervisory signal, wherein said switch means is capable of combining said silence data with any other of said supervisory data so as to form complex supervisory data having periodic cadence.
 9. A system according to claim 7, wherein some of said supervisory data comprise silence data corresponding to a silence supervisory signal, wherein said switch means is capable of combining said silence data with any other of said supervisory data so as to form complex supervisory data having non-periodic cadence.
 10. A system according to claim 7, wherein some of said supervisory data comprise silence data corresponding to a silence supervisory signal, wherein said switch means is capable of combining said silence data with any other of said supervisory data so as to form complex supervisory data having periodic cadence, and wherein said system is capable of combining desired time slots of said input and output ports so as to permit conference-type communication therebetween.
 11. A digital private branch exchange system having a plurality of input and output ports, and including at least one feedback receiving and transmitting port, each of said ports having a plurality of digitally encoded time division multiplexed signals in a plurality of time slots, said system comprising:a. control means for controlling operation of said system and also capable of generating supervisory data corresponding to a plurality of predetermined supervisory tones; b. switch means for interconnecting any of said plurality of time slots of said ports, and for receiving supervisory data from said control means; c. feedback bus means connecting said at least one feedback receiving and transmitting ports, and being adapted to supply in respective time slots, said supervisory data corresponding to said supervisory tones; and d. data storage means for storing said supervisory data generated by said control means and for supplying said stored supervisory data to said switch means.
 12. A system according to claim 11, wherein said switch means is capable of combining any of said respective time slots of said supervisory data to form complex supervisory data and also wherein said complex data thus formed are supplied to additional respective time slots of said feedback bus.
 13. A system according to claim 11, wherein some of said supervisory data comprise silence data corresponding to a silence supervisory tone, and said switch means is capable of combining said silence data with any other of said supervisory data so as to form complex supervisory data having cadence.
 14. A system according to claim 11, wherein said data storage means is also adapted to receive message data from said time slots of said ports, store said message data, and re-transmit said stored message data.
 15. A system according to claim 11, and further comprising, means for supplying digitally encoded music to a music time slot of said feedback bus means, said music supply means comprising analog music source means connected to means for converting analog music supplied by said source means into digitally encoded form.
 16. A system according to claim 11, wherein:i. said control means comprises processor means and system bus means permitting communication between said system and said processor means; and ii. said data storage means comprises a circular memory buffer array for storing said supervisory data.
 17. A system according to claim 11, wherein said system is also capable of combining desired time slots of said input and output ports to permit conference-type communication among said desired time slots.
 18. A system according to claim 11, wherein said switch means is capable of combining any of said respective time slots of said supervisory data to form complex supervisory data having cadence and also wherein said complex data thus formed are supplied to additional respective time slots of said feedback bus, said cadence having a predetermined periodicity.
 19. A method for facilitating conference-type communication among three desired extensions' output time slots of a digital private branch exchange system according to claim 1, each of said plurality of input and output ports having a plurality of digitally encoded time division multiplexed signals, each in a pulse code modulated format, in a plurality of time slots, said method comprising the steps of:a. connecting said three desired output time slots to respective time slots of said feedback bus; b. associating said three desired output time slots to form three unique pairs of said desired time slots, each said pair consisting of two of said desired output time slots each; c. converting each of said two output time slots of each of said three unique pairs of desired output time slots from said pulse code modulated format into a linear coded format; d. summing each of said two output slots converted into said linear coded format of each of said three unique pairs of desired output time slots to form three respective linear sums corresponding respectively to each said unique pair; e. reconverting each of said three respective linear sums from said linear coded format into pulse code modulated format; f. supplying each said reconverted sums to additional respective time slots of said feedback bus; and g. respectively connecting each said additional time slot to a desired extension input time slot not included within the corresponding unique pair of each said additional time slot.
 20. A method according to claim 19, wherein said c-e respectively comprise the use of digital signal processing techniques, and wherein the converting of each said two slots from said pulse code modulated format into said linear coded format at step c includes the elimination of mu-law or A-law encoding.
 21. A method according to claim 19, and further comprising:h. generating data corresponding to fixed values useful in converting said desired slots to said linear format and in reconverting said linear sums into pulse code modulated format; and i. storing said data generated in step h in an associative memory array.
 22. A method for distributing supervisory data to a branch exchange in a digital private branch exchange system having a plurality of input ports corresponding to a plurality of incoming communications and a plurality of outputs ports corresponding to a plurality of outgoing communications, and including at least one feedback receiving and transmitting port, each of said ports having a plurality of digitally encoded time division multiplexed signals in a plurality of time slots, said system comprising control means for controlling operation of said system and also for generating supervisory data corresponding to a plurality of supervisory tones, switch means for interconnecting any of said plurality of time slots of said ports, feedback bus means connecting said at least one feedback receiving and transmitting ports, and data storage means for storing said supervisory data generated by said control means and also for supplying said stored supervisory data to said feedback bus means, said method comprising:a. generating said supervisory data using said control means; b. transmitting said supervisory data to said feedback bus means via said switch means such that said feedback bus means constantly supplies, in respective time slots, said supervisory data corresponding to said plurality of supervisory tones to said ports; and c. controlling said switch means to distribute said supervisory data to said ports as desired.
 23. A method according of claim 22, and further comprising, predeterminately combining at least one of said respective time slots of said supervisory data of said feedback bus means and silence data in a silence time slot of said feedback bus means to at least one additional time slot of said bus to provide complex supervisory data in said at least one additional time slot.
 24. A method according to claim 23, wherein said predetermined combining is performed so as to, at least, provide complex supervisory data capable of producing at least one supervisory tone having cadence.
 25. A method according to claim 24, wherein said cadence is predeterminately periodic.
 26. A method according to claim 25, wherein said periodic cadence comprises 0.5 seconds of silence.
 27. A method according to claim 25, wherein said at least one supervisory tone having periodic cadence comprises 0.25 seconds of silence.
 28. A method according to claim 25, wherein said at least one supervisory tone having periodic cadence comprises 1 second of silence.
 29. A method according to claim 22, wherein said control means generates supervisory data equal to F_(I) wherein F_(I) is calculated using the formula

    (G.sub.1 * sin (I*2*pi*C*N.sub.2)+G.sub.2 * sin (I*2*pi *C*N.sub.3))G.sub.3,

wherein G₁, I, C, N₂, G₂, N₃, and G₃ are variables.
 30. A method according to claim 29, wherein the variables N₂, N₃, G₁, G₂, and G₃, are set equal to, respectively, 350, 440, 1, 2, and
 3. 31. A method according to claim 29, wherein N₂, N₃, G₁, G₂, and G₃, are set equal to, respectively, 480, 620, 1, 2, and
 3. 32. A method according to claim 29, wherein the variables N₂, N₃, G₁, G₂, and G₃ are set equal to, 440, 480, 1, 2, and 3, respectively.
 33. A system according to claim 1, and further comprising, means for connecting at least one selected time slot of said input ports to an outside public communications network having a plurality of remote locations accessible by said public communications network, said connecting means being capable of accessing said remote locations through said public communications network.
 34. A call forwarding method for use in a system according to claim 33, and comprising the steps of:a. connecting an incoming call from one time slot of said input ports to a desired extension time slot; and b. disconnecting said call from said desired time slot, after a period of time has elapsed, and reconnecting said call to said at least one remote location associated with said desired time slot, said remote location being accessed through said network by said connecting means.
 35. A call forwarding method according to claim 34, and further comprising, prior to allowing transfer of data from said incoming call to said remote location, requiring submission of a password from said remote location.
 36. A call forwarding method according to claim 34, wherein said remote location is a second desired extension.
 37. A call forwarding method according to claim 36, and further comprising, prior to allowing transfer of data from said incoming call to said remote location, requiring submission of a password from said remote location.
 38. A call forwarding method according to claim 37, wherein said password is predetermined.
 39. A call forwarding method for use in a system according to claim 1, wherein said system further comprises means for connecting at least one selected time slot of said input ports to an outside public communications network having a plurality of remote locations accessible by said public communications network, said connecting means being capable of accessing said remote locations through said public communications network, said call forwarding method comprising the steps of:a. connecting an incoming call from one time slot of said input ports to a desired extension time slot; b. disconnecting said all from said desired time slot, after a period of time has elapsed, and reconnecting said call to said at least one remote location associated with said desired time slot, said remote location being accessed through said public communications network by said connecting means; and c. prior to allowing transfer of data from said incoming call to said remote location, requiring submission of a predetermined password from said remote location.
 40. A method for facilitating conference-type communication among a plurality of desired extensions' output time slots of a digital private branch exchange system according to claim 1, wherein said system has a plurality of input ports corresponding to N of incoming communications and N of output ports corresponding to a plurality of outgoing communications, said plurality of digitally encoded time division multiplexed signals being in a pulse code modulated format, said method comprising the steps of:a. connecting said plurality of desired output time slots to respective time slots of said feedback bus; b. associating said plurality of desired output time slots to form N unique groups of said desired time slots, each said group consisting of N-1 of said desired output time slots each; c. converting each of said N-1 output time slots of each of said unique groups of desired output time slots from said pulse code modulated format into a linear coded format; d. summing each of said N-1 output slots converted into said linear coded format of each of said groups of desired output time slots to form a plurality of respective linear sums corresponding respectively to each said unique group; e. reconverting each of said plurality of respective linear sums from said linear coded format into pulse code modulated format; f. supplying each said reconverted sums to additional respective time slots of said feedback bus; and g. respectively connecting each said additional time slot to a desired extension input time slot not included within the corresponding unique group of and said additional time slot.
 41. A method according to claim 40, wherein steps c-e respectively comprise the use of digital signal processing techniques, and wherein the converting of each said N-1 time slots from said pulse code modulated format into said linear coded format at step c includes the elimination of mu-law or A-law encoding.
 42. A method according to claim 40, and further comprising:h. generating data corresponding to fixed values useful in converting said desired slots to said linear format and in reconverting said linear sums into pulse code modulated format; and i. storing said data generated in step h in an associative memory array. 